define(['jquery', 'pageJs','config', 'common','arttemplateUtil','stringUtil','task','commonUtil'], function ($, pageJs,config,common,arttemplateUtil,stringUtil,task,commonUtil) {
	
	
	/******************************************加载服务商品价格修改的弹窗内容模板***************************/
	var _goodsYFTpl = function(){
		var goods_yf_tpl = "";
		goods_yf_tpl = arttemplateUtil.template.compile($.setHTML('goods/templates/goods_yf_update_tpl.html'));
		return goods_yf_tpl;
	}
	
	/*******************************************验证服务商品配送规格填写信息*********************************/
	var _priceYFUpdateValidate = function() {
		//修改价格验证
		var price_yf_demo = $("#yfForm").Validform({
			tiptype:4,
			postonce:true,
			isShowRight:false,
			datatype:{//传入自定义datatype类型
				"validYFPrice":function(gets,obj,curform,regxp){
					var currentPrice="";
					var price = "";
					var origalPrice="";
					var inputObj;
					if(!stringUtil.isNotEmpty(gets)) return false;
					if(obj.attr("name").indexOf("goodsPriceBefore")>0) {
						price = obj.val();
						//currentPrice=obj.parent().next().find("input").val();
						origalPrice = obj.parent().prev().find("input").val();
					/*} else if(obj.attr("name").indexOf("goodsPriceAfter")>0){
						currentPrice = obj.val();
						price = obj.parent().prev().find("input").val();
						origalPrice = obj.parent().prev().prev().find("input").val();*/
					} else if(obj.attr("name").indexOf("goodsOrigalPrice")>0) {
						//currentPrice =obj.parent().next().next().find("input").val();
						price = obj.parent().next().find("input").val();
						origalPrice = obj.val();
					}
					if(!commonUtil.isPrice(gets)) return "格式错误,价格范围在【0.01-99999.99】";
					if(parseFloat(gets) < 0.01) return "价格最小值为0.01";
					if(stringUtil.isNotEmpty(price) && stringUtil.isNotEmpty(origalPrice)) {
						
						if((commonUtil.isPrice(origalPrice) && parseFloat(origalPrice) >= 0.01) && (commonUtil.isPrice(price) && parseFloat(price) >= 0.01)){
							if(obj.attr("name").indexOf("goodsPriceBefore")>0 ) {
								if(parseFloat(gets) >= parseFloat(origalPrice)) {
									/*if(parseFloat(gets) < parseFloat(currentPrice)) {
										return "含运费价不能小于不含运费价";
									} else {
										obj.parent().next().find("input").removeClass("Validform_error");
										obj.parent().next().find("input").next().html("").removeClass("Validform_wrong");
									}*/
									return "售价不能大于等于原价";
								} else {
									obj.parent().prev().find("input").removeClass("Validform_error");
									obj.parent().prev().find("input").next().html("").removeClass("Validform_wrong");
								}
							} else if(obj.attr("name").indexOf("goodsOrigalPrice")>0) {
								if(parseFloat(gets) <= parseFloat(price)) {
									return "原价不能小于等于售价";
								} else {
									obj.parent().next().find("input").removeClass("Validform_error");
									obj.parent().next().find("input").next().html("").removeClass("Validform_wrong");
								}
							} 
						} 
						
						/*if(commonUtil.isPrice(currentPrice) && parseFloat(currentPrice) >= 0.01 && (commonUtil.isPrice(price) && parseFloat(price) >= 0.01)) {
							if(obj.attr("name").indexOf("goodsPriceBefore")>0) {
								if(parseFloat(currentPrice) > parseFloat(gets)) {
									return "含运费价不能小于不含运费价";
								} else {
									obj.parent().next().find("input").removeClass("Validform_error");
									obj.parent().next().find("input").next().html("").removeClass("Validform_wrong");
								}
							} else if(obj.attr("name").indexOf("goodsPriceAfter")>0){
								if(parseFloat(price) < parseFloat(gets)) {
									return "不含运费价不能大于含运费价";
								} else if(parseFloat(price) >= parseFloat(origalPrice)){
									obj.parent().prev().find("input").addClass("Validform_error");
									obj.parent().prev().find("input").next().html("含运费价不能大于等于原价").addClass("Validform_wrong");
								}else {
									obj.parent().prev().find("input").removeClass("Validform_error");
									obj.parent().prev().find("input").next().html("").removeClass("Validform_wrong");
								}
							} 
						}*/
						
					}
					return true;
				}
			}
		});
		return price_yf_demo;
	}
	
	
	/***********************************点击修改服务商品价格按钮响应事件*******************************************/
	var _goodsYFPriceUpdateBtnClick = function(id) {
		$(document).off('click',id).on('click',id,function() {
			//获取商品id
			var goodsId = $(this).attr("data-goods-id");
			var origThis = $(this);
			//加载弹窗模板
			var goods_yf_tpl = _goodsYFTpl();
			//获取商品sku信息
			common.common_ajax_request('/api/v1/querySKUList', {
				goodsId:goodsId
			}, false, function(data){
				if(data != null && data != undefined) {
					var yfdata = {list: data};
					//渲染商品列表信息开始
					var html = goods_yf_tpl(yfdata);
					$("#editservice").html(html);
					
					//修改价格区间验证
					var price_yf_demo = _priceYFUpdateValidate();
					
					//弹出sku编辑窗口
					task.openWindow("#editservice","#update_goods_template_confirm",function() {
						if(price_yf_demo.check()) {
							var tipLoading = window.layer.load(1, {
								  shade: [0.1,'#fff'] //0.1透明度的白色背景
								});
							/*//对不含运费价格排序，取出最小价格
							var priceBeforeArr = [];
							$("input[name*=goodsPriceBefore]").each(function(){
								priceBeforeArr.push(parseFloat($(this).val()));
							});
							priceBeforeArr = priceBeforeArr.sort(function(a,b){
								return a-b;
							});
							//获取含运费最小值
							var minYFPrice = priceBeforeArr[0]; 
							//获取含运费最大值
							var maxYFPrice = priceBeforeArr[priceBeforeArr.length - 1]; 
							//对含运费价格排序，取出最小价格
							var priceAfterArr = [];
							$("input[name*=goodsPriceAfter]").each(function(){
								priceAfterArr.push(parseFloat($(this).val()));
							});
							priceAfterArr = priceAfterArr.sort(function(a,b){
								return a-b;
							});
							//获取不含运费最小值
							var minNoYFPrice = priceAfterArr[0];
							//获取不含运费最大值
							var maxNoYFPrice = priceAfterArr[priceAfterArr.length - 1];*/
							
							//获取表单参数,拼接参数
							var params = $("form[name=yfForm]").serializeArray();
							var goods_id = {"name":"goodsId","value":goodsId};
							params.push(goods_id);
							/*var min_no_yf_price = {"name":"minNoYFPrice","value":minNoYFPrice};
							var max_no_yf_price = {"name":"maxNoYFPrice","value":maxNoYFPrice};
							var min_yf_price = {"name":"minYFPrice","value":minYFPrice};
							var max_yf_price = {"name":"maxYFPrice","value":maxYFPrice};
							params.push(min_no_yf_price);
							params.push(min_yf_price);
							params.push(max_no_yf_price);
							params.push(max_yf_price);*/
							$('#update_goods_template_confirm').attr('disabled',true);
							common.common_ajax_request('/api/v1/updateSKUMsg',params, false, function(data){
								window.layer.close(tipLoading);
								//执行成功关闭弹窗
								$("#editservice").modal('hide'); 
								//比较输入的价格的大小，找到最小和最大值重新拼接，重置列表项中含运费价和不含运费价
								origThis.parent().prev().find("span").html(data.minYFPrice + "~" + data.maxYFPrice);//售价
								origThis.parent().prev().prev().find("span").html(data.minOrigalPrice + "~" + data.maxOrigalPrice);//原价
							},'','get',function(){
								$('#update_goods_template_confirm').removeAttr('disabled');
							});
						}
					},"#update_goods_price_cancel",function() {
						//隐藏提示信息
						$("#price_msgdemo").hide();
						$("#price1").removeClass("Validform_error");
						$("#price2").removeClass("Validform_error");
						//重置提交状态可以让表单继续可以提交
						price_demo.resetStatus();
					});
				} else {
					task.modal_alert("未找到商品SKU信息");
				}
			
			});
			
		});
	}
	
	/*************************************点击商品列表中商品编辑按钮响应事件**********************************/
	var _goodsSingleEditBtnClick = function() {
		$(document).on('click',".goods_single_edit_btn",function() {
			//获取商品id
			var goodsId = $(this).attr("data-id");
			//跳转到商品编辑页面
			window.location.hash="#goods/releasegoods/"+goodsId;
		});
	}
	
	
	/**************************************点击修改库存按钮响应事件****************************************/
	var _goodsInventoryUpdateBtnClick = function() {
		$(document).off('click',".goods_inventory_update_btn").on('click',".goods_inventory_update_btn",function() {
			//获取商品id
			var goodsId = $(this).attr("data-goods-id");
			//获取商品库存
			var goodsInventory =  $(this).attr("data-goods-inventory");
			var origThis = $(this);
			//弹出框中设置初始的商品库存
			$("#goods_inventory_text").val(goodsInventory);
			//修改库存验证
			var inventory_demo = $("#form_inventory_Validform").Validform({
				tiptype:4,
				postonce:true,
				isShowRight:false
			});
			
			//弹出库存编辑窗口
			task.openWindow("#editstorage","#update_goods_inventory_confirm",function() {
				//确认按钮响应事件
				if(inventory_demo.check()) {
					var _oldInventory = origThis.parent().prev().find("span").html();
					if(parseInt(_oldInventory) != parseInt($("#goods_inventory_text").val())) {
						$("#update_goods_inventory_confirm").attr('disabled',true);
						common.common_ajax_request('/api/v1/updateGoodsInventory',{
							goodsId:goodsId,
							goodsInventory:$("#goods_inventory_text").val()
						}, false, function(data){
							//刷新商品列表信息
							origThis.parent().prev().find("span").html($("#goods_inventory_text").val());
							origThis.attr("data-goods-inventory",$("#goods_inventory_text").val());
							//执行成功关闭弹窗
							$("#editstorage").modal('hide'); 
						},'','',function(){
							$("#update_goods_inventory_confirm").removeAttr('disabled');
						});
					} else {
						//如果修改前的值与修改后的值一样，关闭弹窗
						$("#editstorage").modal('hide'); 
					}
			     } else {
			    	 $("#goods_inventory_text").next().show();
			     }
			},"#update_goods_inventory_cancel",function(){
				//隐藏提示信息
				$("#goods_inventory_text").removeClass("Validform_error").next().hide();
				
				//重置提交状态可以让表单继续可以提交
				inventory_demo.resetStatus();
			});
		});
		
	}
	
	/**********************************修改原价和会员价时验证填写信息*****************************************/
	var validCurPriceAndPrice = function() {
		var price_demo = $("#form_price_Validform").Validform({
			tiptype:function(msg,o,cssctl){
				var objtip=$("#price_msgdemo");
				cssctl(objtip,o.type);
				objtip.text(msg);
			},
			postonce:true,
			isShowRight:false,
			datatype:{//传入自定义datatype类型
				"validPrice":function(gets,obj,curform,regxp){
					var currentPrice = $("#price1").val();
					var price = $("#price2").val();
					if(!commonUtil.isPrice($.trim(price)) || !commonUtil.isPrice($.trim(currentPrice))) return "格式错误，价格范围在【0.01-99999.99】";
					if(parseFloat(currentPrice) < 0.01 || parseFloat(price) < 0.01) return "价格最小值为0.01";
					if(parseFloat(currentPrice) > parseFloat(price)) return "会员价格不能大于非会员价格";
					$("#price1").removeClass("Validform_error");
					$("#price2").removeClass("Validform_error");
					return true;
				}
			}
		});
		return price_demo;
	}
	
	/**************************************点击修改销售商品价格按钮响应事件*********************************/
	var _goodsPriceUpdateBtnClick = function() {
		$(document).off('click',".goods_price_update_btn").on('click',".goods_price_update_btn",function() {
			//获取商品id
			var goodsId = $(this).attr("data-goods-id");
			//获取商品会员价
			var goodsCurrentPrice = $(this).attr("data-current-price");
			var goodsPrice = $(this).attr("data-price");
			var origThis = $(this);
			$("#price1").val(goodsCurrentPrice);
			$("#price2").val(goodsPrice);
			var price_demo = validCurPriceAndPrice();
			//弹出库存编辑窗口
			task.openWindow("#editsale","#update_goods_price_confirm",function() {
				if(price_demo.check()) {
					$("#update_goods_price_confirm").attr('disabled',true);
					common.common_ajax_request('/api/v1/updateGoodsPrice',{
						goodsId:goodsId,
						goodsCurrentPrice:$("#price1").val(),
						goodsPrice:$("#price2").val()
					}, false, function(data){
						//刷新商品列表信息
						origThis.parent().prev().find("span").html($("#price1").val());//设置新的会员价
						origThis.parent().prev().prev().find("span").html($("#price2").val());//设置新的非会员价
						origThis.attr("data-current-price",$("#price1").val());
						origThis.attr("data-price",$("#price2").val());
						//执行成功关闭弹窗
						$("#editsale").modal('hide'); 
						//验证都通过时，去除错误样式
						$("#price1").removeClass("Validform_error");
						$("#price2").removeClass("Validform_error");
						$("#price_msgdemo").hide();
					},'','',function(){
						$("#update_goods_price_confirm").removeAttr('disabled');
					});
				} else {
					$("#price_msgdemo").show();
				}
			},"#update_goods_price_cancel",function() {
				//隐藏提示信息
				$("#price_msgdemo").hide();
				$("#price1").removeClass("Validform_error");
				$("#price2").removeClass("Validform_error");
				//重置提交状态可以让表单继续可以提交
				price_demo.resetStatus();
			});
		});
	}
	
	
	/***********************************************点击删除按钮删除商品*********************************/
	/*var _goodsDeleteBtnClick = function() {
		//先解除绑定，保证每次只绑定一次
		$(document).off('click',"#goods_remove").on('click',"#goods_remove",function() {
			var mulitId="";
			$(":checkbox:checked").each(function(){
			  if($(this).val()!=""){	  
			    mulitId=mulitId+$(this).val()+",";
			  }
			});
			if(mulitId != "") {
				task.openConfirmTask('确认删除商品?',function() {
					//点击"确认"按钮响应事件
					common.common_ajax_request('/api/v1/goodsDel.htm',{
						mulitId:mulitId
					}, false, function(data){
						//刷新商品列表信息
						var currentPage = $("#page").find(".active").find("a").html();
						queryGoodsPageList(currentPage)
					});
				});
			} else {
				task.modal_alert("请至少选择一条数据记录");
			}
			//a标签的点击事件要加个返回值，false时禁用到点击时控件随机的链接跳转
			return false;
		});
	}*/
	
	/********************************************点击全选按钮响应的事件**********************************/
	//全选/反选
	var selectAll = function(obj){
		var status=$(obj).prop("checked");
		var id=$(obj).prop("id");
		$(":checkbox[name='goods_check']").prop("checked",status);
	}
	
	var _checkAllOrNotClick = function() {
		$(document).off('click',"#check_all_btn").on('click',"#check_all_btn",function() {
			selectAll($(this));
		});
	}
	
	
	/***************************************************点击单个商品复选框按钮********************************************/
	//商品是否都被勾选
	var isAllGoodsSelected = function() {
		var f = true;
		$(":checkbox[id!=check_all_btn]").each(function(i){
			 if(!$(this).prop("checked")){
		         f = false;
		     }
		});
		return f;
	}
	
	var _checkBtnClick = function() {
		$(document).off('click',":checkbox[id!=check_all_btn]").on('click',":checkbox[id!=check_all_btn]",function() {
			//如果商品都是勾选的
			if(isAllGoodsSelected()) {
				$("#check_all_btn").prop("checked",true);
			} else{
				$("#check_all_btn").prop("checked",false);
			}
		});
	}
	
	/****************************************页面中加载确认提示框html内容***********************************************/
	var _loadConformTaskHtml = function() {
		$("#conform_task_id").html($.setHTML('conformtask.html'));
	}
	
	return{
		goodsYFPriceUpdateBtnClick:function(id) {
			_goodsYFPriceUpdateBtnClick(id);
		},
		goodsSingleEditBtnClick:function() {
			_goodsSingleEditBtnClick();
		},
		goodsInventoryUpdateBtnClick:function() {
			_goodsInventoryUpdateBtnClick();
		},
		goodsPriceUpdateBtnClick:function(){
			_goodsPriceUpdateBtnClick();
		},
		/*goodsDeleteBtnClick:function(){
			_goodsDeleteBtnClick();
		},*/
		checkAllOrNotClick:function(){
			_checkAllOrNotClick();
		},
		checkBtnClick:function(){
			_checkBtnClick();
		},
		loadConformTaskHtml:function(){
			_loadConformTaskHtml();
		}
	};
});